<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        table{
            margin-top: 20px;
            border-spacing: 0;
        }
        th,td{
            width: 150px;
            height: 50px;
            
        }
    </style>
</head>
<body>
    用户名: <input type="text" class="yhm" >
    年龄： <input type="text" class="nl">
    <button onclick="add()">添加</button>
    <table border="1">
        <thead>
            <tr>
                <th>全选<input type="checkbox" onclick="All()"></th>
                <th>用户名</th>
                <th>年龄</th>
                <th>操作</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                
            </tr>
        </tbody>
    </table>
</body>
</html>
<script>
    //获取页面上的数据
    var yhm=document.querySelector('.yhm')
    var nl=document.querySelector('.nl')
    var tbody=document.querySelector('tbody')
    var qx=document.querySelector('thead input')
    //添加数据
    function cun(data){
        localStorage.setItem('data',JSON.stringify(data))
    }
    //获取数据
    function qu(){
        var obj=localStorage.getItem('data')
        if(obj!=null){
            return JSON.parse(obj)
        }else{
            return []
        }
    }
    //本地存储添加的数据
    function add(){
        //先获取数据
        var shuju=qu()
        //添加
        shuju.push({
            uname:yhm.value,
            age:nl.value
        })
        //将数据本地存储
        cun(shuju)
        //渲染
        xr()
    } 
    function xr(){
        tbody.innerHTML=''
        //先获取数据
        var shuju=qu()
        //for循环遍历
        for(i=0;i<shuju.length;i++){
            //创建
            var tr=document.createElement('tr')
            //赋值
            tr.innerHTML=`
                <td><input type="checkbox" class="fxk"></td>
                <td>${shuju[i].uname}</td>
                <td>${shuju[i].age}</td>
                <td><button onclick="del(${i})">删除</button></td>`;
            //添加
            tbody.appendChild(tr)
            yhm.value=''
            nl.value=''    
        }
    }
    xr()
    function del(aaa){
        //先获取数据
        var shuju=qu();
        //操作数据(删除)
        shuju.splice(aaa,1);
        //渲染 相当于刷新一下 类似于findPage
        cun(shuju)
        xr()
    }
    function All(){
        var fxk=document.querySelectorAll('.fxk')
        for(i=0;i<fxk.length;i++){
            fxk[i].checked=qx.checked
        }
    }
    
</script>